#include <cmath>
#include <cstddef>
#include <iostream>
#include <vector>
using namespace std;


bool is_prime(int num)
{
    for(int i = 2; i <= sqrt(num); i++)
    {
        if(num % i == 0)
        {
            return false;
        }
    }
    return true;
}

int main() {

    //cout << "test:" << is_prime(2) << endl;

    // 下面这种是老师解法，应该是比较好的
    int num = 0;
    cin >> num;

    for(int i = num / 2; i >= 0; i--)
    {
        if(is_prime(i) && is_prime(num - i))
        {
            cout << i << endl << num - i << endl;
            break;
        }
    }





    // 下面这种解法是应该是暴力解法，oj也能过
    // 这种解法是我自己写出来的
    /*
    int n = 0;
    cin >> n;
    vector<int> v;
    for(int i = 2; i <= 1000; i++)
    {
        int j = i;
        int flag = 1;
        for(j--; j < i && j != 1; j--)
        {
            if(i % j == 0)
            {
                flag = 0;
                break;
            }
        }
        if(flag == 1)
            v.push_back(i);
    }

    int a, b;
    for(int i = 0; i < v.size(); i++)
    {
        if(v[i] > n)
        {
            int gap = 1000;
            for(int j = i - 1; j >= 0; j--)
            {
                for(int k = j; k >= 0; k--)
                {
                    if(v[j] + v[k] == n && v[j] - v[k] < gap)
                    {
                        gap = v[j] - v[k];
                        a = v[k];
                        b = v[j];
                    }
                }
            }
            break;
        }
    }
    cout << a << endl;
    cout << b << endl;
    return 0;
    */

}
